Hybris UX Api icon

Hybris UX Api

(0 reviews)

POST Customer

Post Customer

This API will allows you to create a Customer entity.

URL

http://[localhost]:[port]/ecom-ux/v1/{businessId}/customer

URL PARAMS

nametypedescriptionrequired
businessIdString2 letter ISO 3166 country code (PR,JM,PA,CR) identifying the business unit.Y

Headers

nametypedescriptionrequired
client-idStringThe client-id identifying the channel.Y
client-secretStringPassword associated with the client-id.Y
X-Correlation-IDStringIdentifier that correlates HTTP request between a client and server.
Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction.
N
channelIdStringChannel to identify the business group
Default value : ECOM
N
lobStringThe Line of Business Identifier
Ex: FIXED, PREPAID, POSTPAID
N

Data Model - Request

field nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
nameStringThe full name of the customer in the format FirstName LastName (with space in between)Y (PA,JM,PR,CR)
contactMedium[]ArrayIndicates the contact medium that could be used to contact the party.Y
contactMedium[].mediumTypeStringType of the contact medium, such as: Email, Telephone, Address, EmailN (PA,PR,JM,CR)
contactMedium[].preferredBooleanIf true, indicates that is the preferred contact mediumN (PA,PR,JM,CR)
contactMedium[].characteristicObjectAny additional characteristic(s) of this contact mediumY
contactMedium[].characteristic.street1StringDescribes the streetY (PR,PA,CR)
N (JM)
contactMedium[].characteristic.street2StringComplementary street descriptionY (JM,PA,CR)
N (PR)
contactMedium[].characteristic.cityStringCity nameY (CR)
N (PA,PR,JM)
contactMedium[].characteristic.stateOrProvinceStringState or provinceY (CR)
N (PA,PR,JM)
contactMedium[].characteristic.postCodeStringPost codeY (PR)
N (PA,JM)
N/A (CR)
contactMedium[].characteristic.countryStringCountry nameN (PA,PR,JM,CR)
contactMedium[].characteristic.phoneNumberStringThe primary phone number of the contactY (CR)
N (PA,PR,JM)
contactMedium[].characteristic.contactTypeStringThe type of contact, for example: mobile, homeY (CR)
N (PA,PR,JM)
contactMedium[].characteristic.emailAddressStringFull email address in standard formatY (PR)
N (PA,CR,JM)
characteristic[]ArrayDescribes a given characteristic of an object or entity through a name/value pairY
characteristic[]. nameStringCharacteristics of the entityY
characteristic[]. valueStringValue of the characteristicsY
characteristic[].valueTypeStringValue type of the characteristicsN
characteristics
field nametypedescriptionrequired(mandatory-Y, optional-N, Not applicable- N/A)examples
characteristic[].name=='dateOfBirth'StringDate of Birth
format:{yyyy-MM-dd}
Y (PR)
N (PA,JM)
N/A (CR)
PA,JM,PR:
{"name": "dateOfBirth", "value": "2000-06-12"}
characteristic[].name=='title'StringSalutation of customer
Possible Values: Mr, Mrs
N (PA,PR,JM)
N/A (CR)
PA,JM,PR:
{"name": "title", "value":"Mr"}
characteristic[].name=="salutation"StringSalutationN (PR)
N/A (JM,PA,CR)
PR:
{"name": "salutation", "value":"U"}
characteristic[].name=='gender'StringGender of customer
Possible Values for CR: MASCULINO, FEMENINO, INDEFINIDO
Possible Values for PA,JM: M,F,U
Y (CR)
N (PA,JM)
N/A (PR)
CR:
{"name": "gender", "value":"MASCULINO"}
PA,JM:
{"name": "gender", "value":"M"}
characteristic[].name=='type'StringType of customer
Possible Values: RES
Y (PA,PR,JM)
N/A (CR)
PA,PR,JM:
{"name": "type", "value":"RES"}
characteristic[].name=='companyCode'StringCompany codeN (PA,JM)
N/A (CR,PR)
PA:
{"name": "companyCode", value: "CWP"}
JM:
{"name": "companyCode", value: "TOJ"}
characteristic[].name=='idProof'StringId proof of customer
CEDULA JURIDICA and INSTITUCIONES AUTÓNOMAS are applicable for B2B
Y (CR)
N (PA,PR,JM)
CR:
{"name": "idProof", value:"0106070524"}
PA:
{"name": "idProof", "valueType":"C", value:"8-997-999"}
JM:
{"name": "idProof", "valueType":"TRN", value:"E1134517"}
PR:
{"name": "idProofType", "valueType": "DL", "value": "22222"}
characteristic[].name=='sourceEPC'StringBackend source
Possible Values: CSG, LIBERATE, CERILLION
Y (PA,PR,JM)
N/A (CR)
JM,PA:
{"name": "sourceEPC", "value": "LIBERATE"}
PR:
{"name": "sourceEPC", "value": "CSG}
characteristic[].name=='nationality'StringBackend sourceN (PA)
N/A (CR,JM,PR)
PA:
{"name": "nationality", "value": "PANA"}
characteristic[].name=='employmentStatus'StringEmployment StatusN (PA)
N/A(CR,JM,PR)
PA:
{"name":"employmentStatus", "value": "N"}
characteristic[].name=='dlstate'StringBusiness unitN (PR)
N/A (PA,CR,JM)
PR:
{"name": "dlstate", "value":"PR"}
characteristic[].name=='privacy'StringprivacyN (PR)
N/A (PA,JM,CR)
PR:
{"name": "privacy", "value":"N"}
characteristic[].name=='firstName'StringFirst NameY (PR,CR)
N/A (PA,JM)
PR,CR:
{"name": "firstName", "value":"GILBERTO"}
characteristic[].name=='lastName'StringLast NameY (PR,CR)
N/A (PA,JM)
PR,CR:
{"name": "lastName", "value":"ALMEMAN"}
characteristic[].name=='idProofType'StringId proof type of customer
Possible Values for CR:
CEDULA FISICA, PASAPORTE, CEDULA JURIDICA, INSTITUCIONES AUTÓNOMAS,CEDULA RESIDENCIA
Y (CR)
N/A (PA,PR,JM)
CR:
{"name": "idProofType", "value": "CEDULA FISICA"}
characteristic[].name=='amnistia'Stringamnistia
Boolean Y or N
N (CR)
N/A (PA,PR,JM)
CR:
{"name": "amnistia", "value":"N"}
characteristic[].name=='fraudCategory'StringFraud clasification field
Possible Values for CR:
Oro,Plata, Bronce
N (CR)
N/A (PA,PR,JM)
CR:
{"name": "fraudCategory", "value": "Oro"}
characteristic[].name=='customerType'StringType of customer
only "RESIDENCIAL" is applicable for B2C
Possible Values for CR:
RESIDENCIAL, MICROEMPRESA, PEQUEÑA EMPRESA, PROGRAMA HOGARES CONECTADOS, MEDIANA EMPRESA, GRAN EMPRESA, EMPLEADO,CORPORATIVO,HOTEL
Y (CR)
N/A (PA,PR,JM)
CR:
{"name": "customerType", "value": "RESIDENCIAL"}
characteristic[].name=='customerCategory'StringCustomer category
Possible Values for CR:
CLIENTE VIP, COMERCIAL, EMPRESARIAL, PYMES, CLIENTE LEAL, PHC QUINTIL 1, PHC QUINTIL 2, PHC QUINTIL 3, CLIENTE POTENCIAL, CLIENTE BASICO
N (CR)
N/A (PA,PR,JM)
CR:
{"name":"customerCategory", "value":"CLIENTE VIP"}
characteristic[].name=='role'StringRole of customer
Possible Values for CR:
ABOGADO DE LA EMPRESA, ADMINISTRADOR, DUEÑO, ESPOSA, ESPOSO, JEFE DE SISTEMAS, COBRO, ENCARGADO OPERACIONES, ENCARGADO TECNICO,GERENTE FINANCIERO
Y (CR)
N/A (PA,PR,JM)
CR:
{"name": "role", "value":"DUENO"}
characteristic[].name=='lastName2'StringSecond last nameN (CR)
N/A (PA,PR,JM)
CR:
{"name": "lastName2", "value": "Tosty"}
characteristic[].name=='district'StringDistrict in Customer addressY (CR)
N/A (PA,PR,JM)
CR:
{"name": "district", "value":"PUNTARENAS"}
characteristic[].name=='lob'StringLine of businessY (CR)
N/A (PA,PR,JM)
CR:
{"name": "lob", "value":"FIXED"}
characteristic[].name=="commercialName"StringCommercial Name
Applicable for B2B only.
Possible Values for CR:
MICROEMPRESA, PEQUEÑA EMPRESA, MEDIANA EMPRESA,GRAN EMPRESA, INMOBILIARIO
N (CR)
N/A (PA,PR,JM)
CR:
{"name":"commercialName", "value":""}
characteristic[].name=="hotelType"StringHotel Type
Applicable for B2B only.
Possible Values for CR:
AEROPUERTO, PENSION, APARTOTEL, EJECUTIVO, CASINO, CLUB, DE PASO, MONTAÑA, VACACIONAL
N (CR)
N/A (PA,PR,JM)
CR:
{"name":"hotelType", "value":"AEROPUERTO"}
characteristic[].name=="hotelChain"StringHotel Chain
Applicable for B2B only.
Possible Values for CR:
AM RESORT, BARCELO HOTELS & RESORT, C.H.E GROUP PLC, ENJOY HOTELS, ESPLENDOR, INTERCONTINETAL HOTELS GROUP, SOL MELIA, STARWOOD HOTELS & RESORT WORLD, BEST WESTERN INTERNATIONAL, CARLSON REZINDOR HOTEL GROUP, CARLSON HOSPITALITY WORLDWIDE, CHOICE HOTELS INTERNACIONAL, FIESTA HOTEL GROUP, FOUR SEASONS HOTELS & RESORTS, GLOBAL HYATT CORP, ACOMETIDA INSTALADA, AEREA EXPUESTA, DUCTO CON PIOLA, DUCTO SIN PIOLA ,HILTONS HOTELS CORP, HOSPITALITY INTERNATIONAL, MARRIOT INTERNACIONA,L NINGUNA, OCCIDENTALS HOTELS, RIU HOTELS, WYNDHAM WORLDWIDE
N (CR)
N/A (PA,PR,JM)
CR:
{"name":"hotelChain", "value":"AM RESORT"}
characteristic[].name=="taxIdProof"StringtaxIdProofN(PR)
N/A (PA,PR,JM)
PR:
{"name": "taxIdProof", "valueType": "SSN", "value":"addMu==="}

Data Model - Response

field nametypedescriptionrequired (mandatory-Y, optional-N, Not applicable- N/A)
IdStringCustomer idY (PA,JM,PR,CR)
account[].idStringThe associate Account numberY (PA,JM)
N/A (PR,CR)
nameStringCustomer nameY (CR)
N/A (PA,JM,PR)
customerNoStringCustomer numberY (JM)
N/A (PA,PR,JM)
@typeStringtypeY (CR)
N/A (PA,PR,JM)
characteristics
field nametypedescriptionrequired(mandatory-Y, optional-N, Not applicable- N/A)examples
characteristic[].name=="addressId"StringCustomer address idY (CR)
N/A (PR,JM,PA)
CR:
{"name":"addressId", "value":"1-2F741ZW"}
characteristic[].name=="contactId"StringCustomer contact idY (CR)
N/A (PR,JM,PA)
CR:
{"name":"contactId", "value":"1-2F741ZY"}
characteristic[].name=="businessUnit"Stringbusiness unitY (PR)
N/A (CR,JM,PA)
PR:
{"name:"businessUnit","value":"9900"}
characteristic[].name=="locationId"StringCustomer location idY (PR)
N/A (CR,JM,PA)
PR:
{"name:"locationId","value":"00923122700050"}
characteristic[].name=="dropType"Stringdrop typeY (PR)
N/A (CR,JM,PA)
PR:
{"name:"dropType","value":"COAX"}
characteristic[].name=="jobType"Stringjob typeY (PR)
N/A (CR,JM,PA)
PR:
{"name:"jobType","value":"RC"}

Key considerations

PA Implementation
- name field is a concatenation of firstName and surName.
- idProof valueType represents the identity type of the customer ex Passport(PP),Cedula(C).
- dateOfBirth format must be YYYY-MM-DD.
- characteristic[].name = "type" must have a value of 'RES'.
- characteristic[].name = "sourceEPC" must have a value of 'LIBERATE'.
- companyCode value should be 'CWP'.
- Please refer the Request and response examples with following URL - [Hybris UX Api](https://anypoint.mulesoft.com/exchange/portals/cable-and-wireless/c03653f5-9c46-4e55-bf97-5cef1442bfbf/ecom-ux/minor/1.0/console/method/%2334428/)
CR Implementation
**note**: customerType = "HOTEL" is not in scope and routing is based on lob passed in request body
- New B2C customers are in scope.
- name field in the request is a combination of firstName + lastName + lastName2 from characteristics
- Address fields values should be in Upper case
- No data validation is present in the Mulesoft
- Error message from the backend system is captured in the error response.
- The legacy system that consumes the creation of the customer must respect the values of the lists of values configured in the fields.
- The customer creation web service will only allow the creation of 1 customer at a time.
- The value for the "Identification number" field may be sent with or without hyphens (-), always respecting the minimum and maximum number of characters and other format validations.
- The customer that is created will have as default value in the Status field = "PROSPECT". The proper flow of the Order makes the corresponding change.
- The position and organization of the user consuming the integration will be assigned by default.
- The customer creation process will create an address record with the information provided, this record will be assigned as the main address. The system that consumes the web service must send the correct values from the province, canton, district and neighborhood value lists.
- Mulesoft is converting values to upper case as per the validation in siebel.
- The system will return an error code and message in case there is a problem creating and associating the new address and/or contact record, but the customer creation will not be interrupted. In the case of error (error in address or contact), the creation of these records will be done manually by the end user.
- Reprocessing of request is not possible if the customer entity creation is successful.-Refer Request and Response with Name CR-B2C-Contact Id(contactId), Row Id (id) and Address Id(addressId) are required to Create Agreement, settlementAccount and to create Order-amnistia value should be empty,when “idProofType = CEDULA FISICA” or PASAPORTE
PR Implementation
- name field is the concatenation of firstName and lastName
- DateOfBirth format must be yyyy-MM-dd
- characteristic[].name = "type" must have a value of 'RES'
- characteristic[].name = "sourceEPC" must have a value of 'CSG'
- emailAddress should be mandatory if contactMedium[].mediumType=="Email"
JM Implementation
##### Liberate

- DateOfBirth format must be yyyy-MM-dd.
- characteristic[].name = "type" must have a value of 'RES'
- characteristic[].name = "sourceEPC" must have a value of 'Liberate'

##### Cerillion

- characteristic[].name = "sourceEPC" must have a value of 'Cerillion'

Reviews